import cats.effect.{IO, Sync}
import cats.effect.unsafe.implicits.global
import org.typelevel.log4cats.Logger
import org.typelevel.log4cats.slf4j.Slf4jLogger
object TestF extends App {
    implicit def logger[F[_]: Sync]: Logger[F] = Slf4jLogger.getLogger[F]
    println(Ft.test[IO]().unsafeRunSync())


}
object Ft{
    import cats.implicits.catsSyntaxApply
    def test[F[_]: Sync: Logger](): F[Int] ={
      //  Logger[F].info("hello")
        Logger[F].info("hello world") *>
        Sync[F].blocking{
            1
        }
    }
}